package cn.lingyangwl.agile.system.service;

import cn.lingyangwl.agile.system.model.entity.*;
import cn.lingyangwl.agile.system.model.rqrs.log.*;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;


/**
 * 访问日志 服务层
 * 
 * @author shenguangyang
 */
public interface SysAccessLogService {
    /**
     * 新增访问日志
     * 
     * @param req 访问日志对象
     * @return 结果
     */
    boolean save(AccessLogSaveReq req);

    IPage<SysAccessLog> pageAccessLog(AccessLogPageReq req);

    /**
     * 查询系统访问日志集合
     * 
     * @param req 访问日志对象
     * @return 访问日志集合
     */
    List<SysAccessLog> listAccessLog(SysAccessLog req);

    /**
     * 批量删除系统访问日志
     *
     * @return 结果
     */
    boolean deleteBatch(Long[] ids);

    /**
     * 查询访问日志详细
     *
     * @return 访问日志对象
     */
    SysAccessLog get(Long id);

    /**
     * 清空访问日志
     */
    void clear();

    /**
     * 删除日志
     *
     * @param endTime 最后保留的时间
     */
    int deleteLogTask(String endTime);
}
